Personal calendars have been an organizational tool that are beginning to be used to coordinate schedules among a number of users. For example, among existing calendaring systems, it is possible for a single user to send a multicast message to other known users to invite the other known users to an event, and upon acceptance of that invitation by the other known users, the event can become added to the other user calendars. Such active systems require coordination and cooperation among users to incorporate events into their schedules and require the individuals to actively resolve conflicts. Such systems do not permit the passive collection of calendar information, and do not generate serendipitous events based on a variety of information and criteria, among other things. Accordingly, there is a need for a system that can generate serendipitous events from various sources of information using techniques that make the collective calendaring system of use to an individual.